package dongshi.daddy.dongsrmutitidatasoucespringbootstarter.holder;

/**
 * 数据源标识信息的封装类
 */
public class MyCurrenetDatasourceHolder {
    // 默认数据源routekey的名称，如果基于业务生成的routekey在，
    // 配置文件中不存在，则使用配置文件中配置的该routekey，所以如果有必要
    // ，需要配置该默认的
    private static final String DEFAULT_ROUTE_KEY_NAME = "default_route_key";

    // 存储切换的routekey,设置默认数据源
    private static ThreadLocal<String> DATASOURCE_HOLDER = ThreadLocal.withInitial(() -> DEFAULT_ROUTE_KEY_NAME);

    /*
    切换数据源
    */
    public static void switchCurrentDataSourceConfig(String routeKey) {
        DATASOURCE_HOLDER.set(routeKey);
    }

    /*
    获取当前数据源
     */
    public static String queryCurrentDataSourceConfig() {
        return DATASOURCE_HOLDER.get();
    }
}
